<?php if (!defined('BASEPATH'))exit('No direct script access allowed');

class Wali_kelas extends CI_Controller
{
    public function index()
    {
        $data['rslt_data_wali'] = $this->db->query('SELECT k.id_kelas, t.tahun_angkatan, ks.tingkat_kelas, k.nama_kelas, g.nama_guru, w.keterangan, COUNT(s.id_siskel) AS jumlah_siswa, w.id FROM data_kelas k 
            LEFT JOIN data_wali w ON(k.id_kelas=w.kode_kelas) 
            LEFT JOIN data_guru g ON(g.id=w.kode_guru) 
			LEFT JOIN tahun t ON(t.id_tahun=k.id_tahun)
			LEFT JOIN kelas_stat ks ON(ks.id_kelstat=k.id_kelstat)
			LEFT JOIN siswa_kelas s ON(s.id_kelas=k.id_kelas)
            WHERE ks.tingkat_kelas > 0
            GROUP BY k.id_kelas
            ORDER BY t.tahun_angkatan DESC, ks.tingkat_kelas ASC, k.nama_kelas ASC');
        $this->template->admin('admin/v_wali_kelas', $data, 2, "Data Wali Kelas");
    }
    
    public function edit($id = null)
    {
        if($id === null)
        {
            show_404();
        }
        else
        {
            $rslt_data = $this->db->select('k.nama_kelas, g.nama_guru, w.keterangan, w.id, w.kode_kelas, w.kode_guru, k.id_tahun')
                    ->from('data_kelas k')
                    ->join('data_wali w', 'k.id_kelas=w.kode_kelas', 'INNER')
                    ->join('data_guru g', 'g.id=w.kode_guru', 'INNER')
                    ->where('w.id', $id)->limit(1)
                    ->order_by('g.id', 'ASC')
                    ->get();
            if($rslt_data->num_rows() == 1)
            {
                $rslt_data = $rslt_data->row();
                $data['r_guru'] = $this->db->query('SELECT g.id, g.nama_guru FROM data_guru g
LEFT JOIN data_wali w ON(w.kode_guru=g.id)
LEFT JOIN data_kelas k ON(k.id_kelas=w.kode_kelas AND k.id_tahun = '.$rslt_data->id_tahun.')
WHERE k.id_kelas IS NULL OR g.id = '.$rslt_data->kode_guru.' GROUP BY g.id ORDER BY g.nama_guru ASC');
                $data['id'] = $rslt_data->id;
                $data['kode_kelas'] = $rslt_data->kode_kelas;
                $data['nama_kelas'] = $rslt_data->nama_kelas;
                $data['id_guru'] = $rslt_data->kode_guru;
                $data['keterangan'] = $rslt_data->keterangan;
                $data['set'] = 'ubah';
                $this->template->admin('admin/v_wali_kelas_ubah', $data, 2, "Form Ubah Data Wali Kelas");
            }
            else
            {
                show_404();
            }
        }
    }
    
    public function tambah($id = null)
    {
        if($id === null)
        {
            show_404();
        }
        else
        {
            $rslt_data = $this->db->select('k.id_kelas, k.nama_kelas, g.id, w.keterangan, k.id_tahun')
                    ->from('data_kelas k')
                    ->join('data_wali w', 'k.id_kelas=w.kode_kelas', 'LEFT')
                    ->join('data_guru g', 'g.id=w.kode_guru', 'LEFT')
                    ->where('k.id_kelas', $id)
                    ->limit(1)
                    ->order_by('k.id_kelas', 'ASC')->get();
            if($rslt_data->num_rows() == 1)
            {
                $rslt_data = $rslt_data->row();
                $data['r_guru'] = $this->db->query('SELECT g.id, g.nama_guru FROM data_guru g
LEFT JOIN data_wali w ON(w.kode_guru=g.id)
LEFT JOIN data_kelas k ON(k.id_kelas=w.kode_kelas AND k.id_tahun = '.$rslt_data->id_tahun.')
WHERE k.id_kelas IS NULL GROUP BY g.id ORDER BY g.nama_guru ASC');
                $data['id'] = "";
                $data['kode_kelas'] = $rslt_data->id_kelas;
                $data['nama_kelas'] = $rslt_data->nama_kelas;
                $data['id_guru'] = $rslt_data->id;
                $data['keterangan'] = $rslt_data->keterangan;
                $data['set'] = 'tambah';
                $this->template->admin('admin/v_wali_kelas_ubah', $data, 2, "Form Set Data Wali Kelas");
            }
            else
            {
                show_404();
            }
        }
    }
    
    public function hapus($id = null)
    {
        if($id === null)
        {
            show_404();
        }
        else
        {
            $this->db->where('id', $id)->limit(1)->delete('data_wali');
            redirect('admin/wali_kelas');
        }
    }
    
    public function simpan_data($proses = null)
    {
        if($proses == null)
        {
            show_404();
        }
        else
        {
            $id_guru = $this->input->post('id_guru');
            $kode_kelas = $this->input->post('kode_kelas');
            $keterangan = $this->input->post('keterangan');
            if($proses == 'tambah')
            {
                    $this->db->insert('data_wali', 
                            array('kode_guru' => $id_guru,
                                'kode_kelas' => $kode_kelas,
                                'keterangan' => $keterangan)
                            );
            }
            else if($proses == 'ubah')
            {
                $id = $this->input->post('id');
                if($id != '')
                {
                    $this->db->set( 
                            array('kode_guru' => $id_guru,
                                'keterangan' => $keterangan)
                            )
                        ->where('id', $id)
                        ->update('data_wali');
                }
            }
            redirect('admin/wali_kelas');
        }
    }
}

/* End of file wali_kelas.php */
/* Location: ./application/controllers/admin/wali_kelas.php */